﻿using CanvasControl.Model;
using CanvasControl.View;

namespace CanvasControl.Interface
{
    /// <summary>
    /// Интерфейс поведения для холста.
    /// </summary>
    public interface ICanvasBehavior
    {
        /// <summary>
        /// Выполняет инициализацию поведения.
        /// </summary>
        /// <param name="view">Интерфейс представления.</param>
        /// <param name="canvas">Модель холста рисования.</param>
        void Install(ICanvasView view, CanvasModel canvas);

        /// <summary>
        /// Выполняет очистку ресурсов поведения при удаления с холста.
        /// </summary>
        /// <param name="canvas">Модель холста.</param>
        void Uninstall(CanvasModel canvas);
    }
}